package org.ectar.papi.data
{
	import mx.collections.ArrayCollection;
	
	/**
	 * 
	 * Picasa Web Albums uses the media (http://search.yahoo.com/mrss/) namespace for elements defined 
	 * in the Media RSS specification. For information about the media namespace, see the Media RSS specification.
	 * 
	 * This class is a  container to repressent Media namespace
	 * @author Mykhaylo Lytvynyuk, 2008
  	 * 
	 */
	public class GMedia
	{
		/** Contains the title of the entry's media content, in plain text. */
		[Bindable] public var title:String; // Only Plain type @TODO Add other tpes
		
		/**
		 * Contains a description of the entry's media content. For api projections, 
		 * the description is in plain text; for base projections, the description is in HTML.
		 * */
		[Bindable] public var description:String; // Only Plain Type @TODO Add other tpes
		
		/** Lists the tags associated with the entry. 
		 * Contains a comma-separated list of tags that have been added to the photo, 
		 * or all tags that have been added to photos in the album. */
		[Bindable] public var keywords:ArrayCollection;
		
		/**
		 * Contains the URL of a thumbnail of a photo or album cover. 
		 * If the thumbsize parameter is set, this element points to thumbnails of the requested sizes; 
		 * otherwise the thumbnails are the default thumbnail size.
		 * */
		[Bindable] public var thumbnail:ArrayCollection;
		
		/**
		 * Contains the URL and other information about the full version of the entry's media content.
		 * */
		[Bindable] public var content:Content = new Content();
		
		/**
		 * Contains the nickname of the user who created the content. 
		 * This is a user-specified value that should be used when referring to the user by name.
		 * */
		[Bindable] public var credit:String
	}
}
/** Inner Class which represents content entry */
class Content {
	/** The URL of the full version of the media for the current entry. */
	[Bindable] public var url:String;
	
	/**The height of the image or video represented by this <media:content> element. */
	[Bindable] public var height:int; 

	/** The width of the image or video represented by this <media:content> element. */
	[Bindable] public var width:int;
	
	/** The MIME type of the media. */
	[Bindable] public var type:String;
	
	/** Either image or video. Somewhat redundant, as type contains a more specific MIME type,
	 *  but medium may be simpler for the client to interpret. */
	[Bindable] public var medium:String;		
	
	/**  
	 * The file size in bytes of the image or video represented by this <media:content> element.
	 * */
	[Bindable] public var  fileSize:String;
}